Bidirectional wireless communication is commonly used in many wireless communication applications, e.g., voice, mesh, backbone, and the like. It is desired to achieve a relatively high throughput of the bidirectional communications.
A bidirectional wireless communication scheme may be implemented, for example, to wirelessly exchange first and second packets, denoted a and b, respectively, between first and second nodes, denoted A and B, respectively. For example, during a first time slot, node A sends the packet a to a relay station, denoted R; during a second time slot node B sends the packet b to relay station R; during a third time slot the relay station R applies a modulo two operation on binary field (XOR) operation to the packets a and b, and broadcasts the result of the XOR operation to both nodes A and B. After reception of the broadcast packet, node A may decode the packet b by applying a XOR operation to the received packet and the packet a; and node B may decode the packet a by applying a XOR operation to the received packet and the packet b.